import { findHeadCategoryAPI } from '@/api/cate'
import { category } from '@/utils/constant'
// 分类模块
export default {
  // 不开启命名空间依然是全局的
  namespaced: true,
  state () {
    return {
      // 提供默认的分类数据，防止出现空白的分类效果
      list: category.map((item, index) => ({
        id: index,
        name: item
      }))
    }
  },
  mutations: {
    updateCate (state, payload) {
      state.list = payload
    }
  },
  actions: {
    async findHeadCategory ({ commit }) {
      const res = await findHeadCategoryAPI()
      if (res && res.result) {
        commit('updateCate', res.result)
      }
    }
  },
  getters: {
    leftCate (state) {
      // 不要修改getter和计算属性的依赖
      // 返回对象时用()包裹 防止出现歧义
      return state.list.map(item => ({
        ...item,
        // children: item.children && item.children.filter((item, index) => index < 2)
        children: item.children && item.children.slice(0, 2)
      })
      )
    }
  }
}
